package com.pactera.madp.cp.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pactera.madp.cp.api.dto.product.ProductContactAddDto;
import com.pactera.madp.cp.api.dto.product.ProductContactQueryDto;
import com.pactera.madp.cp.api.entity.product.ProdContactEntity;
import com.pactera.madp.cp.api.vo.product.ProductContactVO;
import com.pactera.madp.cp.api.vo.product.ProductLoveVO;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * (CpProdContact)表服务接口
 *
 * @author yushen.qi
 * @since 2021-12-15 16:58:02
 */
public interface ProdContactService extends IService<ProdContactEntity> {

    /**
     * 统计客户打开产品次数
     *
     * @param productContactAddDto 产品实体类
     * @param url 产品链接
     * @param type 产品行为方式
     * @param response 响应对象
     */
    void countProd(ProductContactAddDto productContactAddDto, String url, String type, HttpServletResponse response);

    /**
     * 分页查询
     *
     * @param page 分页对象
     * @param req 产品查询对象
     * @return
     */
    Page<ProductContactVO> getPage(Page<ProdContactEntity> page, ProductContactQueryDto req);

    /**
     * 推荐产品查询
     *
     * @return
     */
    ProductLoveVO getProduct();

    /**
     * 获取客户浏览产品
     *
     * @param contactId 客户id
     * @return
     */
    List<ProdContactEntity> getContactProd(String contactId);

}
